package com.softer.wxzj.mapper;

import com.softer.wxzj.entity.AccBusiVouchLink;
import com.softer.wxzj.entity.BaseBankInfo;
import com.softer.wxzj.entity.StatisticalReportForms;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.util.List;

@Repository
public interface AccBusiVouchLinkMapper {
    int deleteByBusiNo(String busiNo);

    List<AccBusiVouchLink> selectByBusiNo(String busiNo);

    /**
     * 修改状态
     *
     * @param ccode
     * @param busiNo
     * @return
     */
    int updateInoid(@Param("inoid") String ccode, @Param("busiNo") String busiNo);

    int insert(AccBusiVouchLink record);

    AccBusiVouchLink selectByPrimaryKey(String id);

    int updateByPrimaryKeySelective(AccBusiVouchLink record);

    int updateByPrimaryKey(AccBusiVouchLink record);

    /**
     * 查询凭证的最小年
     *
     * @return
     */
    Integer selectMinYear();

    /**
     * 该年之前的数据
     *
     * @param afterYear
     * @return
     */
    BigDecimal selectByAfterYear(String afterYear);

    /**
     * 期末
     *
     * @param afterYear
     * @return
     */
    BigDecimal selectByBeforeYear(String afterYear);

    /**
     * 查询这个日期的小区
     *
     * @param date
     * @return
     */
    List<AccBusiVouchLink> selectRegionNo(String date);

    /**
     * 查询上期余额
     *
     * @param type
     * @return
     */
    BigDecimal selectAllByDate(@Param("type") String type,@Param("date") String date);

    /**
     * 查询支出金额和收入金额
     *
     * @param date
     * @param type
     * @return
     */
    BaseBankInfo selectOutAnIn(@Param("date") String date, @Param("type") String type);

    /***
     *查询这个月是否有数据
     * @param date
     * @return
     */
    int selectByDate(String date);
}
